home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1992-12-31 | 10.3 KB | [TEXT/KAHL] |
open in:
MacOS 8.1
|
Win98
|
DOS
browse contents |
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary).
Confidence | Program | Detection | Match Type | Support
|
---|
66%
| dexvert
| Compact Compressed (Unix) (archive/compact)
| ext
| Supported |
10%
| dexvert
| MacBinary (archive/macBinary)
| fallback
| Supported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| MacBinary II, Thu Dec 31 07:54:07 1992, modified Thu Dec 31 07:54:07 1992, creator Think C, type ASCII, 9908 bytes "DAppEventSupport.c" , at 0x2734 346 bytes resource
| default (weak)
| |
99%
| file
| data
| default
| |
74%
| TrID
| Macintosh plain text (MacBinary)
| default
| |
25%
| TrID
| MacBinary 2
| default (weak)
| |
100%
| siegfried
| fmt/1762 MacBinary (II)
| default
| |
100%
| lsar
| MacBinary
| default
|
|
id metadata |
---|
key | value |
---|
macFileType | [TEXT] |
macFileCreator | [KAHL] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 12 44 41 70 70 45 76 | 65 6e 74 53 75 70 70 6f |..DAppEv|entSuppo|
|00000010| 72 74 2e 63 00 00 00 00 | 00 00 00 00 00 00 00 00 |rt.c....|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 4b 41 48 | 4c 00 00 00 00 00 00 00 |.TEXTKAH|L.......|
|00000050| 00 00 00 00 00 26 b4 00 | 00 01 5a a7 68 9d ef a7 |.....&..|..Z.h...|
|00000060| 68 9d ef 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |h.......|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 6a c8 00 00 |........|....j...|
|00000080| 2f 2a 0d 09 46 69 6c 65 | 3a 09 09 44 41 70 70 45 |/*..File|:..DAppE|
|00000090| 76 65 6e 74 53 75 70 70 | 6f 72 74 2e 63 70 0d 0d |ventSupp|ort.cp..|
|000000a0| 09 43 6f 6e 74 61 69 6e | 73 3a 09 78 78 78 20 70 |.Contain|s:.xxx p|
|000000b0| 75 74 20 63 6f 6e 74 65 | 6e 74 73 20 68 65 72 65 |ut conte|nts here|
|000000c0| 20 78 78 78 0d 0d 09 57 | 72 69 74 74 65 6e 20 62 | xxx...W|ritten b|
|000000d0| 79 3a 09 4d 61 72 6b 20 | 47 72 6f 73 73 0d 0d 09 |y:.Mark |Gross...|
|000000e0| 43 6f 70 79 72 69 67 68 | 74 3a 09 a9 20 31 39 39 |Copyrigh|t:.. 199|
|000000f0| 32 20 62 79 20 41 70 70 | 6c 69 65 64 20 54 65 63 |2 by App|lied Tec|
|00000100| 68 6e 69 63 61 6c 20 53 | 6f 66 74 77 61 72 65 2c |hnical S|oftware,|
|00000110| 20 61 6c 6c 20 72 69 67 | 68 74 73 20 72 65 73 65 | all rig|hts rese|
|00000120| 72 76 65 64 2e 0d 0d 09 | 43 68 61 6e 67 65 20 48 |rved....|Change H|
|00000130| 69 73 74 6f 72 79 20 28 | 6d 6f 73 74 20 72 65 63 |istory (|most rec|
|00000140| 65 6e 74 20 66 69 72 73 | 74 29 3a 0d 0d 09 09 20 |ent firs|t):.... |
|00000150| 3c 36 3e 09 31 32 2f 33 | 31 2f 39 32 09 4d 54 47 |<6>.12/3|1/92.MTG|
|00000160| 09 09 6d 61 6b 69 6e 67 | 20 74 68 65 20 63 6f 64 |..making| the cod|
|00000170| 65 20 63 6f 6e 64 69 74 | 69 6f 6e 61 6c 79 20 63 |e condit|ionaly c|
|00000180| 6f 6d 70 69 6c 65 64 20 | 73 6f 20 20 20 20 20 20 |ompiled |so |
|00000190| 20 20 20 74 68 61 74 20 | 49 20 61 6d 0d 09 09 09 | that |I am....|
|000001a0| 09 09 09 09 09 09 61 6c | 77 61 79 73 20 77 6f 72 |......al|ways wor|
|000001b0| 6b 69 6e 67 20 77 69 74 | 68 20 61 20 63 75 72 72 |king wit|h a curr|
|000001c0| 65 6e 74 20 20 20 20 20 | 20 20 20 20 76 65 72 73 |ent | vers|
|000001d0| 69 6f 6e 20 69 6e 20 65 | 69 74 68 65 72 20 74 68 |ion in e|ither th|
|000001e0| 69 6e 6b 20 63 0d 09 09 | 09 09 09 09 09 09 09 6f |ink c...|.......o|
|000001f0| 72 20 4d 50 57 20 43 2b | 2b 0d 09 09 20 3c 35 3e |r MPW C+|+... <5>|
|00000200| 09 31 31 2f 31 34 2f 39 | 32 09 4d 54 47 09 09 42 |.11/14/9|2.MTG..B|
|00000210| 72 69 6e 67 69 6e 67 20 | 74 68 65 20 43 2b 2b 20 |ringing |the C++ |
|00000220| 76 65 72 73 69 6f 6e 20 | 75 70 20 74 6f 20 64 61 |version |up to da|
|00000230| 74 65 20 57 52 54 20 74 | 68 65 20 54 68 69 6e 6b |te WRT t|he Think|
|00000240| 43 20 76 65 72 73 69 6f | 6e 2e 0d 09 09 20 3c 34 |C versio|n.... <4|
|00000250| 3e 09 20 39 2f 32 30 2f | 39 32 09 4d 54 47 09 09 |>. 9/20/|92.MTG..|
|00000260| 62 72 69 6e 67 69 6e 67 | 20 74 68 65 20 43 2b 2b |bringing| the C++|
|00000270| 20 76 65 72 73 69 6f 6e | 20 75 70 20 74 6f 20 64 | version| up to d|
|00000280| 61 74 65 20 77 69 74 68 | 20 74 68 65 20 54 48 49 |ate with| the THI|
|00000290| 4e 4b 43 20 76 69 65 72 | 73 69 6f 6e 0d 09 09 20 |NKC vier|sion... |
|000002a0| 3c 33 3e 09 20 20 38 2f | 39 2f 39 32 09 4d 54 47 |<3>. 8/|9/92.MTG|
|000002b0| 09 09 6d 65 72 67 69 6e | 67 20 63 68 61 6e 67 65 |..mergin|g change|
|000002c0| 73 20 66 72 6f 6d 20 74 | 68 65 20 54 68 69 6e 6b |s from t|he Think|
|000002d0| 43 20 76 65 72 73 69 6f | 6e 0d 09 09 20 3c 32 3e |C versio|n... <2>|
|000002e0| 09 20 20 38 2f 38 2f 39 | 32 09 4d 54 47 09 09 66 |. 8/8/9|2.MTG..f|
|000002f0| 69 78 69 6e 67 20 77 61 | 72 6e 69 6e 67 73 0d 0d |ixing wa|rnings..|
|00000300| 09 54 6f 20 44 6f 3a 0d | 2a 2f 0d 0d 0d 2f 2f 0d |.To Do:.|*/...//.|
|00000310| 2f 2f 20 54 68 69 73 20 | 66 69 6c 65 20 68 6f 6c |// This |file hol|
|00000320| 64 73 20 74 68 65 20 69 | 6d 70 65 6c 65 6d 74 61 |ds the i|mpelemta|
|00000330| 74 69 6f 6e 20 6f 66 20 | 74 68 65 20 45 76 65 6e |tion of |the Even|
|00000340| 74 20 64 69 73 70 61 74 | 63 68 20 63 6f 64 65 20 |t dispat|ch code |
|00000350| 66 6f 72 0d 2f 2f 20 74 | 68 65 20 44 41 70 70 6c |for.// t|he DAppl|
|00000360| 69 63 61 74 69 6f 6e 20 | 63 6c 61 73 73 2e 20 20 |ication |class. |
|00000370| 49 74 20 68 61 73 20 74 | 68 65 20 65 76 65 6e 74 |It has t|he event|
|00000380| 20 6f 62 6a 65 63 74 20 | 6c 69 73 74 20 6d 61 69 | object |list mai|
|00000390| 6e 74 65 6e 63 65 0d 2f | 2f 20 63 6f 64 65 20 61 |ntence./|/ code a|
|000003a0| 6e 64 20 74 68 65 20 22 | 66 69 72 73 74 20 63 72 |nd the "|first cr|
|000003b0| 61 63 6b 22 20 6d 65 74 | 68 6f 64 73 20 66 6f 72 |ack" met|hods for|
|000003c0| 20 74 68 65 20 76 61 72 | 69 6f 75 73 20 45 76 65 | the var|ious Eve|
|000003d0| 6e 74 73 20 72 65 74 75 | 72 6e 65 64 20 62 79 20 |nts retu|rned by |
|000003e0| 57 61 69 74 4e 65 78 74 | 45 76 65 6e 74 0d 2f 2f |WaitNext|Event.//|
|000003f0| 20 77 68 69 63 68 20 64 | 6f 20 73 6f 6d 65 74 68 | which d|o someth|
|00000400| 69 6e 67 20 69 6d 70 6f | 72 74 61 6e 74 20 74 68 |ing impo|rtant th|
|00000410| 65 6e 20 73 65 6e 64 73 | 20 74 68 65 20 65 76 65 |en sends| the eve|
|00000420| 6e 74 20 6f 6e 20 74 6f | 20 74 68 65 0d 2f 2f 20 |nt on to| the.// |
|00000430| 65 76 65 6e 74 20 68 61 | 6e 64 6c 65 72 20 6d 6f |event ha|ndler mo|
|00000440| 64 65 6c 2e 20 20 54 68 | 65 20 46 69 72 73 74 20 |del. Th|e First |
|00000450| 43 72 61 63 6b 20 6d 65 | 74 68 6f 64 73 20 61 72 |Crack me|thods ar|
|00000460| 65 20 4e 4f 54 20 74 6f | 20 64 6f 20 74 68 65 20 |e NOT to| do the |
|00000470| 77 6f 72 6b 20 74 68 61 | 74 0d 2f 2f 20 74 68 65 |work tha|t.// the|
|00000480| 20 44 45 76 65 6e 74 48 | 61 6e 64 6c 65 72 20 6d | DEventH|andler m|
|00000490| 65 74 68 6f 64 20 6f 76 | 65 72 72 69 64 65 73 20 |ethod ov|errides |
|000004a0| 61 72 65 20 69 6e 74 65 | 6e 64 65 64 20 74 6f 20 |are inte|nded to |
|000004b0| 64 6f 2c 20 6a 75 73 74 | 20 74 68 65 0d 2f 2f 20 |do, just| the.// |
|000004c0| 63 72 69 74 69 63 61 6c | 20 74 61 73 6b 73 20 77 |critical| tasks w|
|000004d0| 68 69 63 68 20 6d 75 73 | 74 20 62 65 20 64 6f 6e |hich mus|t be don|
|000004e0| 65 20 62 65 66 6f 72 20 | 74 68 65 20 65 76 65 6e |e befor |the even|
|000004f0| 74 68 61 6e 64 6c 65 72 | 20 63 61 6e 0d 2f 2f 20 |thandler| can.// |
|00000500| 64 6f 20 69 74 73 20 6a | 6f 62 2e 0d 2f 2f 0d 0d |do its j|ob..//..|
|00000510| 23 69 6e 63 6c 75 64 65 | 20 22 44 41 70 70 6c 69 |#include| "DAppli|
|00000520| 63 61 74 69 6f 6e 2e 68 | 22 0d 23 69 6e 63 6c 75 |cation.h|".#inclu|
|00000530| 64 65 20 22 44 45 76 65 | 6e 74 48 61 6e 64 6c 65 |de "DEve|ntHandle|
|00000540| 72 2e 68 22 0d 23 69 6e | 63 6c 75 64 65 20 22 44 |r.h".#in|clude "D|
|00000550| 44 6f 63 75 6d 65 6e 74 | 2e 68 22 0d 23 69 6e 63 |Document|.h".#inc|
|00000560| 6c 75 64 65 20 3c 41 70 | 70 6c 65 45 76 65 6e 74 |lude <Ap|pleEvent|
|00000570| 73 2e 68 3e 0d 23 69 6e | 63 6c 75 64 65 20 3c 44 |s.h>.#in|clude <D|
|00000580| 69 6e 6b 55 74 69 6c 73 | 2e 68 3e 0d 0d 23 64 65 |inkUtils|.h>..#de|
|00000590| 66 69 6e 65 09 6b 4f 53 | 45 76 65 6e 74 09 61 70 |fine.kOS|Event.ap|
|000005a0| 70 34 45 76 74 0d 23 64 | 65 66 69 6e 65 09 6b 53 |p4Evt.#d|efine.kS|
|000005b0| 75 73 70 65 6e 64 52 65 | 73 75 6d 65 4d 65 73 73 |uspendRe|sumeMess|
|000005c0| 61 67 65 09 30 78 30 31 | 0d 23 64 65 66 69 6e 65 |age.0x01|.#define|
|000005d0| 09 6b 4d 6f 75 73 65 4d | 6f 76 65 64 4d 65 73 73 |.kMouseM|ovedMess|
|000005e0| 61 67 65 09 30 78 46 41 | 0d 0d 0d 76 6f 69 64 20 |age.0xFA|...void |
|000005f0| 44 41 70 70 6c 69 63 61 | 74 69 6f 6e 3a 3a 45 76 |DApplica|tion::Ev|
|00000600| 65 6e 74 4c 6f 6f 70 28 | 76 6f 69 64 29 0d 7b 0d |entLoop(|void).{.|
|00000610| 09 6c 6f 6e 67 09 67 6f | 74 45 76 65 6e 74 3b 0d |.long.go|tEvent;.|
|00000620| 09 45 76 65 6e 74 52 65 | 63 6f 72 64 09 74 68 65 |.EventRe|cord.the|
|00000630| 45 76 65 6e 74 3b 0d 09 | 0d 09 77 68 69 6c 65 28 |Event;..|..while(|
|00000640| 66 44 6f 6e 65 20 3d 3d | 20 46 41 4c 53 45 29 0d |fDone ==| FALSE).|
|00000650| 09 7b 0d 09 09 67 6f 74 | 45 76 65 6e 74 20 3d 20 |.{...got|Event = |
|00000660| 57 61 69 74 4e 65 78 74 | 45 76 65 6e 74 28 20 65 |WaitNext|Event( e|
|00000670| 76 65 72 79 45 76 65 6e | 74 2c 20 26 74 68 65 45 |veryEven|t, &theE|
|00000680| 76 65 6e 74 2c 20 66 53 | 6c 65 65 70 56 61 6c 2c |vent, fS|leepVal,|
|00000690| 20 4e 55 4c 4c 29 3b 0d | 0d 09 09 67 50 61 73 73 | NULL);.|...gPass|
|000006a0| 49 74 4f 6e 20 3d 20 54 | 52 55 45 3b 0d 09 09 73 |ItOn = T|RUE;...s|
|000006b0| 77 69 74 63 68 28 74 68 | 65 45 76 65 6e 74 2e 77 |witch(th|eEvent.w|
|000006c0| 68 61 74 29 20 0d 09 09 | 7b 0d 09 09 09 63 61 73 |hat) ...|{....cas|
|000006d0| 65 20 6e 75 6c 6c 45 76 | 65 6e 74 3a 0d 09 09 09 |e nullEv|ent:....|
|000006e0| 09 4e 75 6c 6c 45 76 65 | 6e 74 28 26 74 68 65 45 |.NullEve|nt(&theE|
|000006f0| 76 65 6e 74 29 3b 0d 09 | 09 09 09 62 72 65 61 6b |vent);..|...break|
|00000700| 3b 0d 09 0d 09 09 09 63 | 61 73 65 20 6d 6f 75 73 |;......c|ase mous|
|00000710| 65 44 6f 77 6e 3a 0d 09 | 09 09 09 4d 6f 75 73 65 |eDown:..|...Mouse|
|00000720| 44 6f 77 6e 28 26 74 68 | 65 45 76 65 6e 74 29 3b |Down(&th|eEvent);|
|00000730| 0d 09 09 09 09 62 72 65 | 61 6b 3b 0d 09 0d 09 09 |.....bre|ak;.....|
|00000740| 09 63 61 73 65 20 61 63 | 74 69 76 61 74 65 45 76 |.case ac|tivateEv|
|00000750| 74 3a 2f 2f 20 70 75 74 | 20 74 68 65 20 63 6f 72 |t:// put| the cor|
|00000760| 72 65 63 74 20 77 69 6e | 64 6f 77 20 69 6e 20 74 |rect win|dow in t|
|00000770| 68 65 20 66 72 6f 6e 74 | 21 21 21 20 61 6e 64 20 |he front|!!! and |
|00000780| 6d 61 6b 65 20 69 74 20 | 74 68 65 20 6d 54 61 72 |make it |the mTar|
|00000790| 67 65 74 21 21 0d 09 09 | 09 09 41 63 74 69 76 61 |get!!...|..Activa|
|000007a0| 74 65 45 76 74 28 26 74 | 68 65 45 76 65 6e 74 29 |teEvt(&t|heEvent)|
|000007b0| 3b 0d 09 09 09 09 62 72 | 65 61 6b 3b 0d 09 0d 09 |;.....br|eak;....|
|000007c0| 09 09 63 61 73 65 20 61 | 75 74 6f 4b 65 79 3a 0d |..case a|utoKey:.|
|000007d0| 09 09 09 63 61 73 65 20 | 6b 65 79 44 6f 77 6e 3a |...case |keyDown:|
|000007e0| 09 09 09 09 09 0d 09 09 | 09 09 4b 65 79 44 6f 77 |........|..KeyDow|
|000007f0| 6e 28 26 74 68 65 45 76 | 65 6e 74 29 3b 0d 09 09 |n(&theEv|ent);...|
|00000800| 09 09 62 72 65 61 6b 3b | 0d 09 0d 09 09 09 63 61 |..break;|......ca|
|00000810| 73 65 20 64 69 73 6b 45 | 76 74 3a 0d 09 09 09 09 |se diskE|vt:.....|
|00000820| 44 69 73 6b 45 76 74 28 | 26 74 68 65 45 76 65 6e |DiskEvt(|&theEven|
|00000830| 74 29 3b 0d 09 09 09 09 | 62 72 65 61 6b 3b 09 09 |t);.....|break;..|
|00000840| 0d 09 09 09 09 0d 09 09 | 09 63 61 73 65 20 6b 48 |........|.case kH|
|00000850| 69 67 68 4c 65 76 65 6c | 45 76 65 6e 74 3a 0d 09 |ighLevel|Event:..|
|00000860| 09 09 09 48 69 67 68 4c | 65 76 65 6c 45 76 65 6e |...HighL|evelEven|
|00000870| 74 28 26 74 68 65 45 76 | 65 6e 74 29 3b 0d 09 09 |t(&theEv|ent);...|
|00000880| 09 09 62 72 65 61 6b 3b | 0d 09 0d 09 09 09 63 61 |..break;|......ca|
|00000890| 73 65 20 6b 4f 53 45 76 | 65 6e 74 3a 0d 09 09 09 |se kOSEv|ent:....|
|000008a0| 09 4f 53 45 76 65 6e 74 | 28 26 74 68 65 45 76 65 |.OSEvent|(&theEve|
|000008b0| 6e 74 29 3b 0d 09 09 09 | 09 62 72 65 61 6b 3b 0d |nt);....|.break;.|
|000008c0| 09 0d 09 09 09 63 61 73 | 65 20 75 70 64 61 74 65 |.....cas|e update|
|000008d0| 45 76 74 3a 0d 09 09 09 | 09 55 70 64 61 74 65 45 |Evt:....|.UpdateE|
|000008e0| 76 74 28 26 74 68 65 45 | 76 65 6e 74 29 3b 0d 09 |vt(&theE|vent);..|
|000008f0| 09 09 09 62 72 65 61 6b | 3b 0d 09 09 09 0d 09 09 |...break|;.......|
|00000900| 09 64 65 66 61 75 6c 74 | 3a 0d 09 09 09 09 2f 2f |.default|:.....//|
|00000910| 45 6e 74 65 72 4d 42 53 | 74 72 28 22 75 6e 6b 6e |EnterMBS|tr("unkn|
|00000920| 6f 77 6e 20 65 76 65 6e | 74 21 21 21 22 29 3b 0d |own even|t!!!");.|
|00000930| 09 09 09 09 62 72 65 61 | 6b 3b 0d 09 0d 09 09 7d |....brea|k;.....}|
|00000940| 2f 2f 20 65 6e 64 20 62 | 69 67 20 65 76 65 6e 74 |// end b|ig event|
|00000950| 20 73 77 69 74 63 68 21 | 21 0d 0d 09 7d 2f 2f 20 | switch!|!...}// |
|00000960| 65 6e 64 20 77 68 69 6c | 65 20 6d 44 6f 6e 65 20 |end whil|e mDone |
|00000970| 69 73 20 73 74 69 6c 6c | 20 66 61 6c 73 65 0d 7d |is still| false.}|
|00000980| 2f 2f 20 65 6e 64 20 6d | 65 6d 62 65 72 20 66 75 |// end m|ember fu|
|00000990| 6e 63 74 69 6f 6e 20 45 | 76 65 6e 74 4c 6f 6f 70 |nction E|ventLoop|
|000009a0| 0d 0d 0d 2f 2f 0d 2f 2f | 20 54 68 65 20 66 6f 6c |...//.//| The fol|
|000009b0| 6c 6f 77 69 6e 67 20 73 | 65 63 74 69 6f 6e 20 6f |lowing s|ection o|
|000009c0| 66 20 63 6f 64 65 20 69 | 73 20 74 68 65 20 22 46 |f code i|s the "F|
|000009d0| 69 72 73 74 20 43 72 61 | 63 6b 22 20 6d 65 74 68 |irst Cra|ck" meth|
|000009e0| 6f 64 73 20 72 65 71 75 | 69 65 72 65 64 0d 2f 2f |ods requ|iered.//|
|000009f0| 20 62 79 20 74 68 65 20 | 4d 61 63 69 6e 74 6f 73 | by the |Macintos|
|00000a00| 68 20 6f 73 2c 20 61 6e | 64 20 74 68 65 20 44 69 |h os, an|d the Di|
|00000a10| 6e 6b 43 6c 61 73 73 20 | 65 76 65 6e 74 20 68 61 |nkClass |event ha|
|00000a20| 6e 64 6c 69 6e 67 20 61 | 72 63 68 69 74 65 63 74 |ndling a|rchitect|
|00000a30| 75 72 65 2e 0d 2f 2f 0d | 0d 76 6f 69 64 20 44 41 |ure..//.|.void DA|
|00000a40| 70 70 6c 69 63 61 74 69 | 6f 6e 3a 3a 4d 6f 75 73 |pplicati|on::Mous|
|00000a50| 65 44 6f 77 6e 28 45 76 | 65 6e 74 52 65 63 6f 72 |eDown(Ev|entRecor|
|00000a60| 64 20 2a 74 68 65 45 76 | 65 6e 74 29 0d 7b 0d 09 |d *theEv|ent).{..|
|00000a70| 57 69 6e 64 6f 77 50 74 | 72 09 74 68 65 57 69 6e |WindowPt|r.theWin|
|00000a80| 64 6f 77 3b 0d 09 73 68 | 6f 72 74 09 09 70 61 72 |dow;..sh|ort..par|
|00000a90| 74 43 6f 64 65 3b 0d 09 | 6c 6f 6e 67 09 09 72 65 |tCode;..|long..re|
|00000aa0| 73 75 6c 74 3b 0d 09 0d | 09 70 61 72 74 43 6f 64 |sult;...|.partCod|
|00000ab0| 65 20 3d 20 46 69 6e 64 | 57 69 6e 64 6f 77 28 20 |e = Find|Window( |
|00000ac0| 74 68 65 45 76 65 6e 74 | 2d 3e 77 68 65 72 65 2c |theEvent|->where,|
|00000ad0| 20 26 74 68 65 57 69 6e | 64 6f 77 29 3b 0d 09 69 | &theWin|dow);..i|
|00000ae0| 66 28 20 70 61 72 74 43 | 6f 64 65 20 3d 3d 20 69 |f( partC|ode == i|
|00000af0| 6e 4d 65 6e 75 42 61 72 | 20 29 0d 09 7b 0d 09 09 |nMenuBar| )..{...|
|00000b00| 43 6c 65 61 72 4d 65 6e | 75 73 28 29 3b 0d 09 09 |ClearMen|us();...|
|00000b10| 66 54 61 72 67 65 74 2d | 3e 53 65 74 55 70 4d 65 |fTarget-|>SetUpMe|
|00000b20| 6e 75 65 73 28 29 3b 0d | 09 09 0d 09 09 72 65 73 |nues();.|.....res|
|00000b30| 75 6c 74 20 3d 20 4d 65 | 6e 75 53 65 6c 65 63 74 |ult = Me|nuSelect|
|00000b40| 28 74 68 65 45 76 65 6e | 74 2d 3e 77 68 65 72 65 |(theEven|t->where|
|00000b50| 29 3b 0d 09 09 69 66 28 | 48 69 57 72 64 28 72 65 |);...if(|HiWrd(re|
|00000b60| 73 75 6c 74 29 20 21 3d | 20 30 29 0d 09 09 7b 0d |sult) !=| 0)...{.|
|00000b70| 09 09 09 66 54 61 72 67 | 65 74 2d 3e 48 61 6e 64 |...fTarg|et->Hand|
|00000b80| 6c 65 4d 65 6e 75 43 68 | 6f 69 63 65 28 48 69 57 |leMenuCh|oice(HiW|
|00000b90| 72 64 28 72 65 73 75 6c | 74 29 2c 20 4c 6f 57 72 |rd(resul|t), LoWr|
|00000ba0| 64 28 72 65 73 75 6c 74 | 29 20 29 3b 0d 09 09 09 |d(result|) );....|
|00000bb0| 48 69 6c 69 74 65 4d 65 | 6e 75 28 30 29 3b 0d 09 |HiliteMe|nu(0);..|
|00000bc0| 09 7d 0d 09 7d 0d 09 65 | 6c 73 65 0d 09 7b 0d 09 |.}..}..e|lse..{..|
|00000bd0| 09 69 66 20 28 20 74 68 | 65 57 69 6e 64 6f 77 20 |.if ( th|eWindow |
|00000be0| 21 3d 20 46 72 6f 6e 74 | 57 69 6e 64 6f 77 28 29 |!= Front|Window()|
|00000bf0| 20 29 0d 09 09 09 53 65 | 6c 65 63 74 57 69 6e 64 | )....Se|lectWind|
|00000c00| 6f 77 28 20 74 68 65 57 | 69 6e 64 6f 77 29 3b 09 |ow( theW|indow);.|
|00000c10| 2f 2f 20 54 68 65 20 72 | 65 73 75 6c 74 69 6e 67 |// The r|esulting|
|00000c20| 20 61 63 74 69 76 61 74 | 65 20 65 76 65 6e 74 20 | activat|e event |
|00000c30| 77 69 6c 6c 0d 09 09 09 | 09 09 09 09 09 09 09 2f |will....|......./|
|00000c40| 2f 20 63 6f 72 72 65 63 | 74 6c 79 20 73 65 74 20 |/ correc|tly set |
|00000c50| 74 68 65 20 66 74 61 72 | 67 65 74 20 6f 66 20 6d |the ftar|get of m|
|00000c60| 65 20 69 6e 0d 09 09 09 | 09 09 09 09 09 09 09 2f |e in....|......./|
|00000c70| 2f 20 74 68 65 20 41 63 | 74 69 76 61 74 65 20 6d |/ the Ac|tivate m|
|00000c80| 65 74 68 6f 64 20 62 65 | 6c 6c 6f 77 2e 0d 09 09 |ethod be|llow....|
|00000c90| 20 65 6c 73 65 0d 09 09 | 09 66 54 61 72 67 65 74 | else...|.fTarget|
|00000ca0| 2d 3e 48 61 6e 64 6c 65 | 4d 6f 75 73 65 44 6f 77 |->Handle|MouseDow|
|00000cb0| 6e 28 74 68 65 45 76 65 | 6e 74 2c 20 70 61 72 74 |n(theEve|nt, part|
|00000cc0| 43 6f 64 65 2c 20 74 68 | 65 57 69 6e 64 6f 77 29 |Code, th|eWindow)|
|00000cd0| 3b 20 0d 09 7d 0d 0d 7d | 2f 2f 20 65 6e 64 20 4d |; ..}..}|// end M|
|00000ce0| 6f 75 73 65 44 6f 77 6e | 20 6d 65 6d 62 65 72 20 |ouseDown| member |
|00000cf0| 66 75 6e 63 74 69 6f 6e | 20 0d 0d 0d 76 6f 69 64 |function| ...void|
|00000d00| 20 44 41 70 70 6c 69 63 | 61 74 69 6f 6e 3a 3a 4e | DApplic|ation::N|
|00000d10| 75 6c 6c 45 76 65 6e 74 | 28 45 76 65 6e 74 52 65 |ullEvent|(EventRe|
|00000d20| 63 6f 72 64 20 2a 74 68 | 65 45 76 65 6e 74 29 0d |cord *th|eEvent).|
|00000d30| 7b 0d 09 66 54 61 72 67 | 65 74 2d 3e 48 61 6e 64 |{..fTarg|et->Hand|
|00000d40| 6c 65 4e 75 6c 6c 45 76 | 65 6e 74 28 74 68 65 45 |leNullEv|ent(theE|
|00000d50| 76 65 6e 74 29 3b 0d 0d | 09 69 66 28 20 66 44 65 |vent);..|.if( fDe|
|00000d60| 61 64 48 61 6e 64 6c 65 | 72 73 2d 3e 4e 75 6d 49 |adHandle|rs->NumI|
|00000d70| 74 65 6d 73 28 29 29 0d | 09 09 46 6c 75 73 68 44 |tems()).|..FlushD|
|00000d80| 65 61 64 48 61 6e 64 6c | 65 72 73 28 29 3b 0d 7d |eadHandl|ers();.}|
|00000d90| 0d 0d 0d 76 6f 69 64 20 | 44 41 70 70 6c 69 63 61 |...void |DApplica|
|00000da0| 74 69 6f 6e 3a 3a 41 63 | 74 69 76 61 74 65 45 76 |tion::Ac|tivateEv|
|00000db0| 74 28 45 76 65 6e 74 52 | 65 63 6f 72 64 20 2a 74 |t(EventR|ecord *t|
|00000dc0| 68 65 45 76 65 6e 74 29 | 0d 7b 0d 09 73 68 6f 72 |heEvent)|.{..shor|
|00000dd0| 74 20 77 69 6e 64 6f 77 | 4b 69 6e 64 3b 0d 09 0d |t window|Kind;...|
|00000de0| 09 77 69 6e 64 6f 77 4b | 69 6e 64 20 3d 20 28 28 |.windowK|ind = ((|
|00000df0| 57 69 6e 64 6f 77 50 65 | 65 6b 29 20 74 68 65 45 |WindowPe|ek) theE|
|00000e00| 76 65 6e 74 2d 3e 6d 65 | 73 73 61 67 65 29 2d 3e |vent->me|ssage)->|
|00000e10| 77 69 6e 64 6f 77 4b 69 | 6e 64 3b 0d 09 69 66 20 |windowKi|nd;..if |
|00000e20| 28 77 69 6e 64 6f 77 4b | 69 6e 64 20 3e 3d 20 75 |(windowK|ind >= u|
|00000e30| 73 65 72 4b 69 6e 64 29 | 0d 09 7b 0d 09 09 66 54 |serKind)|..{...fT|
|00000e40| 61 72 67 65 74 20 3d 20 | 28 44 45 76 65 6e 74 48 |arget = |(DEventH|
|00000e50| 61 6e 64 6c 65 72 20 2a | 29 20 47 65 74 57 52 65 |andler *|) GetWRe|
|00000e60| 66 43 6f 6e 28 28 57 69 | 6e 64 6f 77 50 74 72 29 |fCon((Wi|ndowPtr)|
|00000e70| 74 68 65 45 76 65 6e 74 | 2d 3e 6d 65 73 73 61 67 |theEvent|->messag|
|00000e80| 65 29 3b 0d 09 09 66 54 | 61 72 67 65 74 2d 3e 48 |e);...fT|arget->H|
|00000e90| 61 6e 64 6c 65 41 63 74 | 69 76 61 74 65 45 76 74 |andleAct|ivateEvt|
|00000ea0| 28 74 68 65 45 76 65 6e | 74 29 3b 0d 09 7d 0d 09 |(theEven|t);..}..|
|00000eb0| 65 6c 73 65 0d 09 09 66 | 54 61 72 67 65 74 20 3d |else...f|Target =|
|00000ec0| 20 74 68 69 73 3b 0d 09 | 2f 2f 20 49 27 6d 20 6d | this;..|// I'm m|
|00000ed0| 61 6b 69 6e 67 20 74 68 | 65 20 73 61 6d 65 20 61 |aking th|e same a|
|00000ee0| 73 73 75 6d 70 74 69 6f | 6e 20 74 68 61 74 20 75 |ssumptio|n that u|
|00000ef0| 73 65 72 4b 69 6e 64 20 | 77 69 6e 64 6f 77 73 20 |serKind |windows |
|00000f00| 61 72 65 20 44 57 69 64 | 6e 6f 77 73 20 77 68 69 |are DWid|nows whi|
|00000f10| 63 68 0d 09 2f 2f 20 69 | 73 20 61 20 73 61 66 65 |ch..// i|s a safe|
|00000f20| 20 61 73 73 75 6d 70 74 | 69 6f 6e 20 61 73 20 44 | assumpt|ion as D|
|00000f30| 57 69 6e 64 6f 77 73 20 | 61 72 65 20 63 72 65 61 |Windows |are crea|
|00000f40| 74 65 64 20 62 79 20 74 | 68 65 20 75 73 65 72 2e |ted by t|he user.|
|00000f50| 0d 09 2f 2f 20 77 69 6e | 64 6f 77 73 20 75 6e 64 |..// win|dows und|
|00000f60| 65 72 20 73 79 73 20 37 | 20 77 69 6c 6c 20 62 65 |er sys 7| will be|
|00000f70| 20 44 57 69 6e 64 6f 77 | 73 2e 0d 09 0d 09 2f 2f | DWindow|s.....//|
|00000f80| 20 77 68 61 74 63 68 20 | 66 6f 72 20 61 63 74 69 | whatch |for acti|
|00000f90| 76 65 20 77 69 6e 64 6f | 77 73 20 6e 6f 74 20 62 |ve windo|ws not b|
|00000fa0| 65 69 6e 67 20 74 68 65 | 20 66 72 6f 6e 74 20 6f |eing the| front o|
|00000fb0| 6e 65 2c 20 69 66 20 74 | 68 69 73 20 68 61 70 70 |ne, if t|his happ|
|00000fc0| 65 6e 73 0d 09 2f 2f 20 | 74 68 65 6e 20 61 20 63 |ens..// |then a c|
|00000fd0| 68 65 63 6b 20 66 6f 72 | 20 66 72 6f 6e 74 6e 65 |heck for| frontne|
|00000fe0| 73 73 20 6e 65 65 64 73 | 20 74 6f 20 62 65 20 70 |ss needs| to be p|
|00000ff0| 75 74 20 68 65 72 65 20 | 61 6e 64 20 69 66 20 77 |ut here |and if w|
|00001000| 69 6e 64 6f 77 20 69 73 | 6e 27 74 20 0d 09 2f 2f |indow is|n't ..//|
|00001010| 20 74 68 65 20 66 72 6f | 6e 74 20 6f 6e 20 74 68 | the fro|nt on th|
|00001020| 65 6e 20 62 72 69 6e 67 | 20 69 74 20 75 70 2e 0d |en bring| it up..|
|00001030| 7d 0d 0d 0d 0d 76 6f 69 | 64 20 44 41 70 70 6c 69 |}....voi|d DAppli|
|00001040| 63 61 74 69 6f 6e 3a 3a | 41 75 74 6f 4b 65 79 28 |cation::|AutoKey(|
|00001050| 45 76 65 6e 74 52 65 63 | 6f 72 64 20 2a 74 68 65 |EventRec|ord *the|
|00001060| 45 76 65 6e 74 29 0d 7b | 0d 09 66 54 61 72 67 65 |Event).{|..fTarge|
|00001070| 74 2d 3e 48 61 6e 64 6c | 65 41 75 74 6f 4b 65 79 |t->Handl|eAutoKey|
|00001080| 28 74 68 65 45 76 65 6e | 74 29 3b 0d 09 2f 2f 20 |(theEven|t);..// |
|00001090| 42 49 47 20 53 54 55 42 | 42 21 21 21 21 0d 7d 0d |BIG STUB|B!!!!.}.|
|000010a0| 0d 0d 0d 76 6f 69 64 20 | 44 41 70 70 6c 69 63 61 |...void |DApplica|
|000010b0| 74 69 6f 6e 3a 3a 4b 65 | 79 44 6f 77 6e 28 45 76 |tion::Ke|yDown(Ev|
|000010c0| 65 6e 74 52 65 63 6f 72 | 64 20 2a 74 68 65 45 76 |entRecor|d *theEv|
|000010d0| 65 6e 74 29 09 09 09 09 | 09 0d 7b 0d 09 63 68 61 |ent)....|..{..cha|
|000010e0| 72 20 6b 65 79 3b 0d 09 | 6c 6f 6e 67 20 72 65 73 |r key;..|long res|
|000010f0| 75 6c 74 3b 0d 09 0d 09 | 6b 65 79 20 3d 20 28 63 |ult;....|key = (c|
|00001100| 68 61 72 29 20 74 68 65 | 45 76 65 6e 74 2d 3e 6d |har) the|Event->m|
|00001110| 65 73 73 61 67 65 20 26 | 20 63 68 61 72 43 6f 64 |essage &| charCod|
|00001120| 65 4d 61 73 6b 3b 0d 09 | 69 66 28 20 74 68 65 45 |eMask;..|if( theE|
|00001130| 76 65 6e 74 2d 3e 6d 6f | 64 69 66 69 65 72 73 20 |vent->mo|difiers |
|00001140| 26 20 63 6d 64 4b 65 79 | 20 29 09 2f 2f 63 6f 6d |& cmdKey| ).//com|
|00001150| 6d 61 6e 64 20 6b 65 79 | 21 21 0d 09 7b 0d 09 09 |mand key|!!..{...|
|00001160| 43 6c 65 61 72 4d 65 6e | 75 73 28 29 3b 0d 09 09 |ClearMen|us();...|
|00001170| 66 54 61 72 67 65 74 2d | 3e 53 65 74 55 70 4d 65 |fTarget-|>SetUpMe|
|00001180| 6e 75 65 73 28 29 3b 0d | 09 09 0d 09 09 72 65 73 |nues();.|.....res|
|00001190| 75 6c 74 20 3d 20 4d 65 | 6e 75 4b 65 79 28 6b 65 |ult = Me|nuKey(ke|
|000011a0| 79 29 3b 0d 09 09 69 66 | 28 48 69 57 72 64 28 72 |y);...if|(HiWrd(r|
|000011b0| 65 73 75 6c 74 29 20 21 | 3d 20 30 29 0d 09 09 7b |esult) !|= 0)...{|
|000011c0| 0d 09 09 09 66 54 61 72 | 67 65 74 2d 3e 48 61 6e |....fTar|get->Han|
|000011d0| 64 6c 65 4d 65 6e 75 43 | 68 6f 69 63 65 28 48 69 |dleMenuC|hoice(Hi|
|000011e0| 57 72 64 28 72 65 73 75 | 6c 74 29 2c 20 4c 6f 57 |Wrd(resu|lt), LoW|
|000011f0| 72 64 28 72 65 73 75 6c | 74 29 20 29 3b 0d 09 09 |rd(resul|t) );...|
|00001200| 09 48 69 6c 69 74 65 4d | 65 6e 75 28 30 29 3b 0d |.HiliteM|enu(0);.|
|00001210| 09 09 7d 0d 09 7d 0d 09 | 65 6c 73 65 20 2f 2f 20 |..}..}..|else // |
|00001220| 6e 6f 74 20 6d 65 6e 75 | 20 63 6f 6d 6d 61 6e 64 |not menu| command|
|00001230| 20 6b 65 79 0d 09 09 66 | 54 61 72 67 65 74 2d 3e | key...f|Target->|
|00001240| 48 61 6e 64 6c 65 4b 65 | 79 44 6f 77 6e 28 74 68 |HandleKe|yDown(th|
|00001250| 65 45 76 65 6e 74 29 3b | 0d 0d 7d 0d 0d 0d 0d 76 |eEvent);|..}....v|
|00001260| 6f 69 64 20 44 41 70 70 | 6c 69 63 61 74 69 6f 6e |oid DApp|lication|
|00001270| 3a 3a 44 69 73 6b 45 76 | 74 28 45 76 65 6e 74 52 |::DiskEv|t(EventR|
|00001280| 65 63 6f 72 64 20 2a 74 | 68 65 45 76 65 6e 74 29 |ecord *t|heEvent)|
|00001290| 0d 7b 0d 09 50 6f 69 6e | 74 20 6d 6f 75 6e 74 50 |.{..Poin|t mountP|
|000012a0| 6f 69 6e 74 3b 0d 09 73 | 68 6f 72 74 09 65 72 72 |oint;..s|hort.err|
|000012b0| 3b 0d 09 0d 09 69 66 20 | 28 48 69 57 72 64 28 74 |;....if |(HiWrd(t|
|000012c0| 68 65 45 76 65 6e 74 2d | 3e 6d 65 73 73 61 67 65 |heEvent-|>message|
|000012d0| 29 20 21 3d 20 6e 6f 45 | 72 72 29 20 0d 09 7b 0d |) != noE|rr) ..{.|
|000012e0| 09 09 53 65 74 50 74 28 | 26 6d 6f 75 6e 74 50 6f |..SetPt(|&mountPo|
|000012f0| 69 6e 74 2c 20 6b 44 49 | 4c 65 66 74 2c 20 6b 44 |int, kDI|Left, kD|
|00001300| 49 54 6f 70 29 3b 0d 09 | 09 65 72 72 20 3d 20 44 |ITop);..|.err = D|
|00001310| 49 42 61 64 4d 6f 75 6e | 74 28 6d 6f 75 6e 74 50 |IBadMoun|t(mountP|
|00001320| 6f 69 6e 74 2c 20 74 68 | 65 45 76 65 6e 74 2d 3e |oint, th|eEvent->|
|00001330| 6d 65 73 73 61 67 65 29 | 3b 0d 09 7d 0d 09 66 54 |message)|;..}..fT|
|00001340| 61 72 67 65 74 2d 3e 48 | 61 6e 64 6c 65 44 69 73 |arget->H|andleDis|
|00001350| 6b 45 76 74 28 74 68 65 | 45 76 65 6e 74 29 3b 0d |kEvt(the|Event);.|
|00001360| 7d 0d 0d 0d 0d 76 6f 69 | 64 20 44 41 70 70 6c 69 |}....voi|d DAppli|
|00001370| 63 61 74 69 6f 6e 3a 3a | 48 69 67 68 4c 65 76 65 |cation::|HighLeve|
|00001380| 6c 45 76 65 6e 74 28 45 | 76 65 6e 74 52 65 63 6f |lEvent(E|ventReco|
|00001390| 72 64 20 2a 74 68 65 45 | 76 65 6e 74 29 0d 7b 0d |rd *theE|vent).{.|
|000013a0| 09 41 45 50 72 6f 63 65 | 73 73 41 70 70 6c 65 45 |.AEProce|ssAppleE|
|000013b0| 76 65 6e 74 28 74 68 65 | 45 76 65 6e 74 29 3b 0d |vent(the|Event);.|
|000013c0| 09 0d 09 2f 2f 66 54 61 | 72 67 65 74 2d 3e 48 61 |...//fTa|rget->Ha|
|000013d0| 6e 64 6c 65 48 69 67 68 | 4c 65 76 65 6c 45 76 65 |ndleHigh|LevelEve|
|000013e0| 6e 74 28 74 68 65 45 76 | 65 6e 74 29 3b 0d 7d 0d |nt(theEv|ent);.}.|
|000013f0| 0d 0d 76 6f 69 64 20 44 | 41 70 70 6c 69 63 61 74 |..void D|Applicat|
|00001400| 69 6f 6e 3a 3a 4f 53 45 | 76 65 6e 74 28 45 76 65 |ion::OSE|vent(Eve|
|00001410| 6e 74 52 65 63 6f 72 64 | 20 2a 74 68 65 45 76 65 |ntRecord| *theEve|
|00001420| 6e 74 29 0d 7b 0d 09 73 | 77 69 74 63 68 20 28 28 |nt).{..s|witch ((|
|00001430| 74 68 65 45 76 65 6e 74 | 2d 3e 6d 65 73 73 61 67 |theEvent|->messag|
|00001440| 65 20 3e 3e 20 32 34 29 | 20 26 20 30 78 46 46 29 |e >> 24)| & 0xFF)|
|00001450| 20 0d 09 7b 0d 09 09 63 | 61 73 65 20 6b 4d 6f 75 | ..{...c|ase kMou|
|00001460| 73 65 4d 6f 76 65 64 4d | 65 73 73 61 67 65 3a 0d |seMovedM|essage:.|
|00001470| 09 09 09 44 69 73 70 6f | 73 65 52 67 6e 28 20 66 |...Dispo|seRgn( f|
|00001480| 43 75 72 73 6f 72 52 67 | 6e 29 3b 0d 09 09 09 66 |CursorRg|n);....f|
|00001490| 43 75 72 73 6f 72 52 67 | 6e 20 3d 20 4e 65 77 52 |CursorRg|n = NewR|
|000014a0| 67 6e 28 29 3b 0d 09 09 | 09 53 65 74 52 65 63 74 |gn();...|.SetRect|
|000014b0| 52 67 6e 28 66 43 75 72 | 73 6f 72 52 67 6e 2c 20 |Rgn(fCur|sorRgn, |
|000014c0| 2d 33 32 37 36 36 2c 20 | 2d 33 32 37 36 36 2c 20 |-32766, |-32766, |
|000014d0| 33 32 37 36 36 2c 20 33 | 32 37 36 36 29 3b 20 0d |32766, 3|2766); .|
|000014e0| 09 09 09 62 72 65 61 6b | 3b 0d 0d 09 09 63 61 73 |...break|;....cas|
|000014f0| 65 20 6b 53 75 73 70 65 | 6e 64 52 65 73 75 6d 65 |e kSuspe|ndResume|
|00001500| 4d 65 73 73 61 67 65 3a | 0d 09 09 09 66 49 6e 42 |Message:|....fInB|
|00001510| 61 63 6b 67 72 6f 75 6e | 64 20 3d 20 21 28 74 68 |ackgroun|d = !(th|
|00001520| 65 45 76 65 6e 74 2d 3e | 6d 65 73 73 61 67 65 20 |eEvent->|message |
|00001530| 26 20 72 65 73 75 6d 65 | 46 6c 61 67 29 3b 0d 09 |& resume|Flag);..|
|00001540| 09 09 69 66 20 28 66 49 | 6e 42 61 63 6b 67 72 6f |..if (fI|nBackgro|
|00001550| 75 6e 64 29 09 2f 2f 67 | 6f 69 6e 67 20 69 6e 74 |und).//g|oing int|
|00001560| 6f 20 74 68 65 20 62 61 | 63 6b 67 72 6f 75 6e 64 |o the ba|ckground|
|00001570| 0d 09 09 09 7b 0d 09 09 | 09 09 66 53 6c 65 65 70 |....{...|..fSleep|
|00001580| 56 61 6c 20 3d 20 42 41 | 43 4b 47 52 4f 55 4e 44 |Val = BA|CKGROUND|
|00001590| 53 4c 45 45 50 3b 20 2f | 2f 20 77 65 20 64 6f 6e |SLEEP; /|/ we don|
|000015a0| 27 74 20 77 61 6e 27 74 | 20 61 6e 79 20 4e 55 4c |'t wan't| any NUL|
|000015b0| 4c 20 65 76 65 6e 74 73 | 20 77 68 65 6e 20 77 65 |L events| when we|
|000015c0| 27 72 65 20 69 6e 20 74 | 68 65 20 62 61 63 6b 67 |'re in t|he backg|
|000015d0| 72 6f 75 6e 64 0d 09 09 | 09 09 47 69 76 65 43 6c |round...|..GiveCl|
|000015e0| 69 70 54 6f 53 79 73 74 | 65 6d 28 29 3b 0d 09 09 |ipToSyst|em();...|
|000015f0| 09 7d 0d 09 09 09 65 6c | 73 65 09 2f 2f 20 63 6f |.}....el|se.// co|
|00001600| 6d 69 6e 67 20 6f 75 74 | 20 6f 66 20 74 68 65 20 |ming out| of the |
|00001610| 62 61 63 6b 67 72 6f 75 | 6e 64 0d 09 09 09 7b 0d |backgrou|nd....{.|
|00001620| 09 09 09 09 66 53 6c 65 | 65 70 56 61 6c 20 3d 20 |....fSle|epVal = |
|00001630| 53 4c 45 45 50 56 41 4c | 3b 2f 2f 20 70 75 74 20 |SLEEPVAL|;// put |
|00001640| 62 61 63 6b 20 74 6f 20 | 6e 6f 72 6d 61 6c 21 21 |back to |normal!!|
|00001650| 0d 09 09 09 09 69 66 28 | 74 68 65 45 76 65 6e 74 |.....if(|theEvent|
|00001660| 2d 3e 6d 65 73 73 61 67 | 65 20 26 20 63 6f 6e 76 |->messag|e & conv|
|00001670| 65 72 74 43 6c 69 70 62 | 6f 61 72 64 46 6c 61 67 |ertClipb|oardFlag|
|00001680| 29 0d 09 09 09 09 09 47 | 65 74 43 6c 69 70 46 72 |)......G|etClipFr|
|00001690| 6f 6d 53 79 73 74 65 6d | 28 29 3b 0d 09 09 09 09 |omSystem|();.....|
|000016a0| 2f 2f 20 49 20 64 6f 6e | 27 74 20 64 6f 20 61 6e |// I don|'t do an|
|000016b0| 79 74 68 69 6e 67 20 65 | 6c 73 65 20 66 6f 72 20 |ything e|lse for |
|000016c0| 49 20 6b 6e 6f 77 20 74 | 68 61 74 20 74 68 65 20 |I know t|hat the |
|000016d0| 66 72 6f 6e 74 20 77 69 | 6e 64 6f 77 20 77 69 6c |front wi|ndow wil|
|000016e0| 6c 0d 09 09 09 09 2f 2f | 20 62 65 20 67 65 74 74 |l.....//| be gett|
|000016f0| 69 6e 67 20 61 6e 20 61 | 63 74 69 76 61 74 65 20 |ing an a|ctivate |
|00001700| 65 76 65 6e 74 20 6e 65 | 78 74 20 6c 6f 6f 70 21 |event ne|xt loop!|
|00001710| 21 21 0d 09 09 09 7d 0d | 09 09 09 62 72 65 61 6b |!!....}.|...break|
|00001720| 3b 0d 09 7d 0d 09 66 54 | 61 72 67 65 74 2d 3e 48 |;..}..fT|arget->H|
|00001730| 61 6e 64 6c 65 4f 53 45 | 76 65 6e 74 28 74 68 65 |andleOSE|vent(the|
|00001740| 45 76 65 6e 74 29 3b 0d | 7d 0d 0d 0d 76 6f 69 64 |Event);.|}...void|
|00001750| 20 44 41 70 70 6c 69 63 | 61 74 69 6f 6e 3a 3a 55 | DApplic|ation::U|
|00001760| 70 64 61 74 65 45 76 74 | 28 45 76 65 6e 74 52 65 |pdateEvt|(EventRe|
|00001770| 63 6f 72 64 20 2a 74 68 | 65 45 76 65 6e 74 29 0d |cord *th|eEvent).|
|00001780| 7b 0d 09 44 57 69 6e 64 | 6f 77 20 2a 75 70 44 61 |{..DWind|ow *upDa|
|00001790| 74 65 57 69 6e 64 6f 77 | 3b 0d 09 73 68 6f 72 74 |teWindow|;..short|
|000017a0| 20 77 69 6e 64 6f 77 4b | 69 6e 64 3b 0d 09 0d 09 | windowK|ind;....|
|000017b0| 77 69 6e 64 6f 77 4b 69 | 6e 64 20 3d 20 28 28 57 |windowKi|nd = ((W|
|000017c0| 69 6e 64 6f 77 50 65 65 | 6b 29 20 74 68 65 45 76 |indowPee|k) theEv|
|000017d0| 65 6e 74 2d 3e 6d 65 73 | 73 61 67 65 29 2d 3e 77 |ent->mes|sage)->w|
|000017e0| 69 6e 64 6f 77 4b 69 6e | 64 3b 0d 0d 09 2f 2f 20 |indowKin|d;...// |
|000017f0| 49 27 6d 20 6d 61 6b 69 | 6e 67 20 74 68 65 20 73 |I'm maki|ng the s|
|00001800| 61 6d 65 20 61 73 73 75 | 6d 70 74 69 6f 6e 20 74 |ame assu|mption t|
|00001810| 68 61 74 20 75 73 65 72 | 4b 69 6e 64 20 77 69 6e |hat user|Kind win|
|00001820| 64 6f 77 73 20 61 72 65 | 20 44 57 69 64 6e 6f 77 |dows are| DWidnow|
|00001830| 73 20 77 68 69 63 68 0d | 09 2f 2f 20 69 73 20 61 |s which.|.// is a|
|00001840| 20 73 61 66 65 20 61 73 | 73 75 6d 70 74 69 6f 6e | safe as|sumption|
|00001850| 20 61 73 20 44 57 69 6e | 64 6f 77 73 20 61 72 65 | as DWin|dows are|
|00001860| 20 63 72 65 61 74 65 64 | 20 62 79 20 74 68 65 20 | created| by the |
|00001870| 75 73 65 72 0d 09 2f 2f | 20 77 69 6e 64 6f 77 73 |user..//| windows|
|00001880| 20 75 6e 64 65 72 20 73 | 79 73 20 37 20 77 69 6c | under s|ys 7 wil|
|00001890| 6c 20 62 65 20 44 57 69 | 6e 64 6f 77 73 2e 20 20 |l be DWi|ndows. |
|000018a0| 54 68 69 73 20 69 73 20 | 61 20 62 69 74 20 6f 66 |This is |a bit of|
|000018b0| 20 61 20 72 69 73 6b 20 | 68 65 61 72 2c 20 69 66 | a risk |hear, if|
|000018c0| 0d 09 2f 2f 20 74 68 65 | 20 77 69 6e 64 6f 77 20 |..// the| window |
|000018d0| 69 73 20 6e 6f 74 20 69 | 6e 20 6d 79 20 61 70 70 |is not i|n my app|
|000018e0| 6c 69 63 74 69 6f 6e 20 | 70 6c 61 6e 65 20 28 77 |liction |plane (w|
|000018f0| 68 69 63 68 20 73 68 6f | 75 6c 64 6e 27 74 20 68 |hich sho|uldn't h|
|00001900| 61 70 70 65 6e 29 20 74 | 68 69 73 20 0d 09 2f 2f |appen) t|his ..//|
|00001910| 20 77 69 6c 6c 20 62 72 | 61 6b 65 2e 0d 0d 09 69 | will br|ake....i|
|00001920| 66 20 28 77 69 6e 64 6f | 77 4b 69 6e 64 20 3e 3d |f (windo|wKind >=|
|00001930| 20 75 73 65 72 4b 69 6e | 64 29 0d 09 7b 0d 09 09 | userKin|d)..{...|
|00001940| 75 70 44 61 74 65 57 69 | 6e 64 6f 77 20 3d 20 28 |upDateWi|ndow = (|
|00001950| 44 57 69 6e 64 6f 77 20 | 2a 29 20 47 65 74 57 52 |DWindow |*) GetWR|
|00001960| 65 66 43 6f 6e 28 28 57 | 69 6e 64 6f 77 50 74 72 |efCon((W|indowPtr|
|00001970| 29 74 68 65 45 76 65 6e | 74 2d 3e 6d 65 73 73 61 |)theEven|t->messa|
|00001980| 67 65 29 3b 0d 09 09 67 | 50 61 73 73 49 74 4f 6e |ge);...g|PassItOn|
|00001990| 20 3d 20 46 41 4c 53 45 | 3b 0d 09 09 75 70 44 61 | = FALSE|;...upDa|
|000019a0| 74 65 57 69 6e 64 6f 77 | 2d 3e 48 61 6e 64 6c 65 |teWindow|->Handle|
|000019b0| 55 70 64 61 74 65 45 76 | 74 28 74 68 65 45 76 65 |UpdateEv|t(theEve|
|000019c0| 6e 74 29 3b 0d 09 7d 0d | 09 67 50 61 73 73 49 74 |nt);..}.|.gPassIt|
|000019d0| 4f 6e 20 3d 20 54 52 55 | 45 3b 0d 09 0d 7d 0d 0d |On = TRU|E;...}..|
|000019e0| 0d 0d 2f 2f 0d 2f 2f 20 | 54 68 65 20 66 6f 6c 6c |..//.// |The foll|
|000019f0| 6f 77 69 6e 67 20 73 65 | 63 74 69 6f 6e 20 6f 66 |owing se|ction of|
|00001a00| 20 63 6f 64 65 20 69 73 | 20 69 6e 20 73 75 70 70 | code is| in supp|
|00001a10| 6f 72 74 20 6f 66 20 74 | 68 65 20 6d 75 6c 74 69 |ort of t|he multi|
|00001a20| 70 6c 65 0d 2f 2f 20 65 | 76 65 6e 74 20 68 61 6e |ple.// e|vent han|
|00001a30| 64 6c 69 6e 67 20 6f 62 | 6a 65 63 74 20 6d 6f 64 |dling ob|ject mod|
|00001a40| 6c 65 20 75 73 65 64 20 | 69 6e 20 74 68 65 20 44 |le used |in the D|
|00001a50| 69 6e 6b 43 6c 61 73 73 | 20 6c 69 62 72 61 72 79 |inkClass| library|
|00001a60| 0d 2f 2f 0d 0d 0d 2f 2f | 20 49 74 74 65 72 61 74 |.//...//| Itterat|
|00001a70| 65 20 6f 76 65 72 20 74 | 68 65 20 6c 69 73 74 20 |e over t|he list |
|00001a80| 6f 66 20 64 65 61 64 48 | 61 6e 64 6c 65 72 73 20 |of deadH|andlers |
|00001a90| 65 76 65 6e 74 20 68 61 | 64 6c 65 72 73 20 61 6e |event ha|dlers an|
|00001aa0| 64 20 64 65 6c 65 74 65 | 0d 2f 2f 20 74 68 65 6d |d delete|.// them|
|00001ab0| 20 61 6c 6c 2e 20 20 49 | 74 20 69 73 20 61 73 73 | all. I|t is ass|
|00001ac0| 75 6d 65 64 20 74 68 61 | 74 20 74 68 65 79 20 68 |umed tha|t they h|
|00001ad0| 61 76 65 20 61 6c 6c 20 | 63 6c 65 61 6e 65 64 20 |ave all |cleaned |
|00001ae0| 75 70 20 61 66 74 65 72 | 0d 2f 2f 20 74 68 65 6d |up after|.// them|
|00001af0| 73 65 6c 76 65 73 20 61 | 6e 64 20 69 74 73 20 6f |selves a|nd its o|
|00001b00| 6b 20 74 6f 20 70 75 66 | 66 20 74 68 65 6d 2e 0d |k to puf|f them..|
|00001b10| 42 6f 6f 6c 65 61 6e 20 | 44 41 70 70 6c 69 63 61 |Boolean |DApplica|
|00001b20| 74 69 6f 6e 3a 3a 46 6c | 75 73 68 44 65 61 64 48 |tion::Fl|ushDeadH|
|00001b30| 61 6e 64 6c 65 72 73 28 | 76 6f 69 64 29 0d 7b 0d |andlers(|void).{.|
|00001b40| 09 44 45 76 65 6e 74 48 | 61 6e 64 6c 65 72 20 2a |.DEventH|andler *|
|00001b50| 6e 65 78 74 48 61 6e 64 | 6c 65 72 3b 0d 09 0d 09 |nextHand|ler;....|
|00001b60| 66 49 74 65 72 61 74 6f | 72 2d 3e 49 6e 69 74 28 |fIterato|r->Init(|
|00001b70| 66 44 65 61 64 48 61 6e | 64 6c 65 72 73 29 3b 0d |fDeadHan|dlers);.|
|00001b80| 09 0d 09 2f 2f 20 46 69 | 72 73 74 20 72 65 6d 6f |...// Fi|rst remo|
|00001b90| 76 65 20 74 68 65 20 64 | 65 61 64 20 68 61 6e 64 |ve the d|ead hand|
|00001ba0| 6c 65 72 73 20 66 72 6f | 6d 20 74 68 65 20 65 76 |lers fro|m the ev|
|00001bb0| 65 6e 74 20 68 61 64 6c | 65 72 20 6c 69 73 74 20 |ent hadl|er list |
|00001bc0| 28 73 65 65 20 62 65 6c | 6c 6f 77 20 0d 09 2f 2f |(see bel|low ..//|
|00001bd0| 20 66 6f 72 20 57 48 59 | 20 74 68 65 79 20 68 61 | for WHY| they ha|
|00001be0| 76 65 6e 27 74 20 62 65 | 65 6e 20 72 65 6d 6f 76 |ven't be|en remov|
|00001bf0| 65 64 20 61 6c 72 65 61 | 64 79 29 20 74 68 65 6e |ed alrea|dy) then|
|00001c00| 20 64 65 6c 65 74 65 20 | 74 68 65 6d 2e 20 20 54 | delete |them. T|
|00001c10| 68 65 20 65 72 72 6f 72 | 0d 09 2f 2f 20 63 68 65 |he error|..// che|
|00001c20| 63 6b 69 6e 67 20 28 6c | 69 6b 65 20 69 73 20 6e |cking (l|ike is n|
|00001c30| 65 78 74 48 61 6e 64 6c | 65 72 20 69 6e 20 74 68 |extHandl|er in th|
|00001c40| 65 20 6c 69 73 74 20 6f | 66 20 66 45 76 65 6e 74 |e list o|f fEvent|
|00001c50| 48 61 6e 64 6c 65 72 73 | 3f 20 6f 72 20 66 44 65 |Handlers|? or fDe|
|00001c60| 61 64 48 61 6e 64 6c 65 | 72 73 3f 29 0d 09 2f 2f |adHandle|rs?)..//|
|00001c70| 20 69 73 20 64 6f 6e 65 | 20 69 6e 20 52 65 6d 6f | is done| in Remo|
|00001c80| 76 65 49 74 65 6d 2c 20 | 62 75 74 20 77 65 20 68 |veItem, |but we h|
|00001c90| 61 76 65 20 74 6f 20 62 | 65 20 63 61 72 65 66 75 |ave to b|e carefu|
|00001ca0| 6c 6c 20 77 69 74 68 20 | 74 68 61 74 20 64 65 6c |ll with |that del|
|00001cb0| 65 74 65 20 67 75 79 2e | 20 20 0d 09 2f 2f 20 48 |ete guy.| ..// H|
|00001cc0| 65 27 6c 6c 20 6e 75 6b | 65 20 79 6f 75 20 69 66 |e'll nuk|e you if|
|00001cd0| 20 67 69 76 65 6e 20 61 | 6e 79 20 65 78 63 75 73 | given a|ny excus|
|00001ce0| 65 2e 0d 09 0d 09 77 68 | 69 6c 65 28 20 6e 65 78 |e.....wh|ile( nex|
|00001cf0| 74 48 61 6e 64 6c 65 72 | 20 3d 20 28 44 45 76 65 |tHandler| = (DEve|
|00001d00| 6e 74 48 61 6e 64 6c 65 | 72 20 2a 29 66 49 74 65 |ntHandle|r *)fIte|
|00001d10| 72 61 74 6f 72 2d 3e 47 | 65 74 43 75 72 72 65 6e |rator->G|etCurren|
|00001d20| 74 54 68 65 6e 49 6e 63 | 72 65 6d 65 6e 74 28 29 |tThenInc|rement()|
|00001d30| 20 29 0d 09 7b 0d 09 09 | 66 45 76 65 6e 74 48 61 | )..{...|fEventHa|
|00001d40| 6e 64 6c 65 72 73 2d 3e | 52 65 6d 6f 76 65 49 74 |ndlers->|RemoveIt|
|00001d50| 65 6d 28 6e 65 78 74 48 | 61 6e 64 6c 65 72 29 3b |em(nextH|andler);|
|00001d60| 0d 09 09 0d 09 09 69 66 | 28 20 66 44 65 61 64 48 |......if|( fDeadH|
|00001d70| 61 6e 64 6c 65 72 73 2d | 3e 52 65 6d 6f 76 65 49 |andlers-|>RemoveI|
|00001d80| 74 65 6d 28 6e 65 78 74 | 48 61 6e 64 6c 65 72 29 |tem(next|Handler)|
|00001d90| 20 29 0d 09 09 09 64 65 | 6c 65 74 65 20 6e 65 78 | )....de|lete nex|
|00001da0| 74 48 61 6e 64 6c 65 72 | 3b 0d 09 7d 0d 09 72 65 |tHandler|;..}..re|
|00001db0| 74 75 72 6e 20 54 52 55 | 45 3b 0d 7d 0d 0d 2f 2f |turn TRU|E;.}..//|
|00001dc0| 20 54 61 6b 65 20 6b 69 | 6c 6c 4d 65 20 6f 75 74 | Take ki|llMe out|
|00001dd0| 20 6f 66 20 74 68 65 20 | 6c 69 73 74 20 6f 66 20 | of the |list of |
|00001de0| 69 74 73 45 76 65 6e 74 | 48 61 6e 64 6c 65 72 73 |itsEvent|Handlers|
|00001df0| 20 61 6e 64 0d 2f 2f 20 | 75 70 2d 64 61 74 65 20 | and.// |up-date |
|00001e00| 74 68 65 20 6c 69 73 74 | 20 70 6f 69 6e 74 65 72 |the list| pointer|
|00001e10| 73 20 69 6e 20 74 68 61 | 74 20 6c 69 73 74 20 61 |s in tha|t list a|
|00001e20| 6e 64 20 66 69 6e 61 6c | 79 0d 2f 2f 20 70 6c 61 |nd final|y.// pla|
|00001e30| 63 65 20 74 68 61 74 20 | 67 75 79 20 69 6e 20 74 |ce that |guy in t|
|00001e40| 68 65 20 6c 69 73 74 20 | 6f 66 20 64 65 61 64 48 |he list |of deadH|
|00001e50| 61 6e 64 6c 65 72 73 20 | 66 6f 72 20 66 6c 75 73 |andlers |for flus|
|00001e60| 68 69 6e 67 0d 0d 42 6f | 6f 6c 65 61 6e 20 44 41 |hing..Bo|olean DA|
|00001e70| 70 70 6c 69 63 61 74 69 | 6f 6e 3a 3a 52 65 6d 6f |pplicati|on::Remo|
|00001e80| 76 65 48 61 6e 64 6c 65 | 72 28 20 44 45 76 65 6e |veHandle|r( DEven|
|00001e90| 74 48 61 6e 64 6c 65 72 | 20 2a 6b 69 6c 6c 4d 65 |tHandler| *killMe|
|00001ea0| 29 0d 7b 0d 09 44 45 76 | 65 6e 74 48 61 6e 64 6c |).{..DEv|entHandl|
|00001eb0| 65 72 20 2a 6e 65 78 74 | 48 61 6e 64 6c 65 72 3b |er *next|Handler;|
|00001ec0| 0d 09 0d 09 66 49 74 65 | 72 61 74 6f 72 2d 3e 49 |....fIte|rator->I|
|00001ed0| 6e 69 74 28 66 45 76 65 | 6e 74 48 61 6e 64 6c 65 |nit(fEve|ntHandle|
|00001ee0| 72 73 29 3b 0d 09 0d 09 | 2f 2f 20 46 69 72 73 74 |rs);....|// First|
|00001ef0| 20 6c 6f 6f 70 20 6f 76 | 65 72 20 74 68 65 20 65 | loop ov|er the e|
|00001f00| 76 65 6e 74 20 68 61 64 | 6c 65 72 73 20 61 6e 64 |vent had|lers and|
|00001f10| 20 72 65 73 65 74 20 61 | 6c 6c 20 72 65 66 72 65 | reset a|ll refre|
|00001f20| 6e 63 65 73 20 74 6f 20 | 6b 69 6c 6c 4d 65 0d 09 |nces to |killMe..|
|00001f30| 2f 2f 20 74 6f 20 6b 69 | 6c 6c 4d 65 2d 3e 66 4e |// to ki|llMe->fN|
|00001f40| 65 78 74 48 61 6e 64 6c | 65 72 2e 20 20 54 68 65 |extHandl|er. The|
|00001f50| 6e 20 69 66 20 6b 69 6c | 6c 4d 65 20 69 73 20 74 |n if kil|lMe is t|
|00001f60| 68 65 20 66 54 61 72 67 | 65 74 20 72 65 73 65 74 |he fTarg|et reset|
|00001f70| 20 74 68 61 74 0d 09 2f | 2f 20 74 6f 20 70 6f 69 | that../|/ to poi|
|00001f80| 6e 74 20 74 6f 20 65 69 | 74 68 65 72 20 6b 69 6c |nt to ei|ther kil|
|00001f90| 6c 4d 65 2d 3e 66 4e 65 | 78 74 48 61 6e 64 6c 65 |lMe->fNe|xtHandle|
|00001fa0| 72 20 6f 72 20 67 41 70 | 70 6c 69 63 61 74 69 6f |r or gAp|plicatio|
|00001fb0| 6e 20 0d 09 2f 2f 20 28 | 69 66 20 6b 69 6c 6c 4d |n ..// (|if killM|
|00001fc0| 65 2d 3e 66 4e 65 78 74 | 48 61 6e 64 6c 65 72 20 |e->fNext|Handler |
|00001fd0| 3d 3d 20 4e 55 4c 4c 29 | 0d 09 0d 09 77 68 69 6c |== NULL)|....whil|
|00001fe0| 65 28 20 6e 65 78 74 48 | 61 6e 64 6c 65 72 20 3d |e( nextH|andler =|
|00001ff0| 20 28 44 45 76 65 6e 74 | 48 61 6e 64 6c 65 72 20 | (DEvent|Handler |
|00002000| 2a 29 66 49 74 65 72 61 | 74 6f 72 2d 3e 47 65 74 |*)fItera|tor->Get|
|00002010| 43 75 72 72 65 6e 74 54 | 68 65 6e 49 6e 63 72 65 |CurrentT|henIncre|
|00002020| 6d 65 6e 74 28 29 20 29 | 0d 09 7b 0d 09 09 69 66 |ment() )|..{...if|
|00002030| 20 28 6b 69 6c 6c 4d 65 | 20 3d 3d 20 28 6e 65 78 | (killMe| == (nex|
|00002040| 74 48 61 6e 64 6c 65 72 | 29 2d 3e 66 4e 65 78 74 |tHandler|)->fNext|
|00002050| 48 61 6e 64 6c 65 72 29 | 0d 09 09 09 20 28 6e 65 |Handler)|.... (ne|
|00002060| 78 74 48 61 6e 64 6c 65 | 72 29 2d 3e 66 4e 65 78 |xtHandle|r)->fNex|
|00002070| 74 48 61 6e 64 6c 65 72 | 20 3d 20 6b 69 6c 6c 4d |tHandler| = killM|
|00002080| 65 2d 3e 66 4e 65 78 74 | 48 61 6e 64 6c 65 72 3b |e->fNext|Handler;|
|00002090| 0d 09 09 69 66 20 28 6b | 69 6c 6c 4d 65 20 3d 3d |...if (k|illMe ==|
|000020a0| 20 66 54 61 72 67 65 74 | 29 0d 09 09 7b 0d 09 09 | fTarget|)...{...|
|000020b0| 09 69 66 20 28 20 66 54 | 61 72 67 65 74 2d 3e 66 |.if ( fT|arget->f|
|000020c0| 4e 65 78 74 48 61 6e 64 | 6c 65 72 29 0d 09 09 09 |NextHand|ler)....|
|000020d0| 20 09 66 54 61 72 67 65 | 74 20 3d 20 6b 69 6c 6c | .fTarge|t = kill|
|000020e0| 4d 65 2d 3e 66 4e 65 78 | 74 48 61 6e 64 6c 65 72 |Me->fNex|tHandler|
|000020f0| 3b 0d 09 09 09 65 6c 73 | 65 0d 09 09 09 09 66 54 |;....els|e.....fT|
|00002100| 61 72 67 65 74 20 3d 20 | 67 41 70 70 6c 69 63 61 |arget = |gApplica|
|00002110| 74 69 6f 6e 3b 2f 2f 20 | 6f 6b 20 66 6f 72 20 6e |tion;// |ok for n|
|00002120| 6f 77 20 62 75 74 20 74 | 68 69 73 20 6d 61 79 20 |ow but t|his may |
|00002130| 6d 61 6b 65 20 64 61 6e | 67 6c 65 69 6e 67 20 70 |make dan|gleing p|
|00002140| 6f 69 6e 74 65 72 73 20 | 6c 61 74 65 72 21 21 21 |ointers |later!!!|
|00002150| 21 21 0d 09 09 7d 0d 09 | 7d 0d 0d 09 2f 2f 20 49 |!!...}..|}...// I|
|00002160| 20 64 6f 6e 27 74 20 72 | 65 6d 6f 76 65 20 74 68 | don't r|emove th|
|00002170| 65 20 6b 69 6c 6c 4d 65 | 20 6f 62 6a 65 63 74 20 |e killMe| object |
|00002180| 66 6f 72 6d 20 74 68 65 | 20 66 45 76 65 6e 74 48 |form the| fEventH|
|00002190| 61 6e 64 6c 65 72 73 20 | 6c 69 73 74 20 61 74 20 |andlers |list at |
|000021a0| 74 68 69 73 20 70 6f 69 | 6e 74 0d 09 2f 2f 20 62 |this poi|nt..// b|
|000021b0| 65 63 61 75 73 65 20 69 | 66 20 49 20 64 69 64 20 |ecause i|f I did |
|000021c0| 74 68 65 6e 20 74 68 65 | 20 43 6c 65 61 6e 55 70 |then the| CleanUp|
|000021d0| 28 29 20 6d 65 74 68 6f | 64 20 77 68 69 63 68 20 |() metho|d which |
|000021e0| 74 65 6c 6c 73 20 61 6c | 6c 20 74 68 65 20 65 76 |tells al|l the ev|
|000021f0| 65 6e 74 68 61 6e 64 6c | 65 72 73 0d 09 2f 2f 20 |enthandl|ers..// |
|00002200| 74 6f 20 6b 69 6c 6c 20 | 74 68 65 6d 73 65 6c 76 |to kill |themselv|
|00002210| 73 20 77 6f 75 6c 64 20 | 6e 6f 74 20 77 6f 72 6b |s would |not work|
|00002220| 20 64 65 77 20 74 6f 20 | 73 69 64 65 20 65 66 66 | dew to |side eff|
|00002230| 65 63 74 73 20 6f 66 20 | 6f 62 6a 65 63 74 73 20 |ects of |objects |
|00002240| 6b 69 6c 6c 69 6e 67 20 | 74 68 65 6d 73 65 6c 76 |killing |themselv|
|00002250| 65 73 0d 09 2f 2f 20 61 | 6e 64 20 74 65 6c 6c 69 |es..// a|nd telli|
|00002260| 6e 67 20 74 68 69 65 72 | 20 64 65 70 65 6e 64 65 |ng thier| depende|
|00002270| 6e 74 73 20 74 6f 20 64 | 6f 20 74 68 65 20 73 61 |nts to d|o the sa|
|00002280| 6d 65 20 28 65 67 20 44 | 57 69 6e 64 6f 77 2d 3e |me (eg D|Window->|
|00002290| 4b 69 6c 6c 4d 65 4e 65 | 78 74 28 29 20 64 6f 65 |KillMeNe|xt() doe|
|000022a0| 73 20 74 68 69 73 29 0d | 09 2f 2f 0d 09 2f 2f 20 |s this).|.//..// |
|000022b0| 49 66 20 49 20 64 69 64 | 20 72 65 6d 6f 76 65 20 |If I did| remove |
|000022c0| 74 68 65 20 65 76 65 6e | 74 20 68 61 6e 64 6c 65 |the even|t handle|
|000022d0| 72 20 66 72 6f 6d 20 74 | 68 65 20 66 45 76 65 6e |r from t|he fEven|
|000022e0| 74 48 61 6e 64 6c 65 72 | 73 20 6c 69 73 74 20 74 |tHandler|s list t|
|000022f0| 68 65 6e 20 74 68 61 74 | 0d 09 2f 2f 20 6c 69 73 |hen that|..// lis|
|00002300| 74 20 77 6f 75 6c 64 20 | 63 68 61 6e 67 65 20 77 |t would |change w|
|00002310| 68 69 6c 65 20 61 6e 20 | 69 74 65 72 61 74 6f 72 |hile an |iterator|
|00002320| 20 77 61 73 20 6f 70 70 | 65 72 61 74 69 6e 67 20 | was opp|erating |
|00002330| 6f 6e 20 69 74 2c 20 20 | 72 65 73 75 6c 74 69 6e |on it, |resultin|
|00002340| 67 20 69 6e 20 74 68 65 | 0d 09 2f 2f 20 69 74 65 |g in the|..// ite|
|00002350| 72 61 74 69 6f 6e 20 67 | 65 74 74 69 6e 67 20 6c |ration g|etting l|
|00002360| 6f 73 74 20 69 6e 20 73 | 70 61 63 65 2e 0d 09 0d |ost in s|pace....|
|00002370| 09 69 66 28 20 66 45 76 | 65 6e 74 48 61 6e 64 6c |.if( fEv|entHandl|
|00002380| 65 72 73 2d 3e 49 74 65 | 6d 49 6e 4c 69 73 74 28 |ers->Ite|mInList(|
|00002390| 6b 69 6c 6c 4d 65 29 20 | 29 0d 09 7b 0d 09 09 66 |killMe) |)..{...f|
|000023a0| 44 65 61 64 48 61 6e 64 | 6c 65 72 73 2d 3e 41 64 |DeadHand|lers->Ad|
|000023b0| 64 49 74 65 6d 28 20 6b | 69 6c 6c 4d 65 20 29 3b |dItem( k|illMe );|
|000023c0| 0d 09 09 72 65 74 75 72 | 6e 20 54 52 55 45 3b 20 |...retur|n TRUE; |
|000023d0| 2f 2f 20 6b 69 6c 6c 4d | 65 20 69 73 20 74 61 6b |// killM|e is tak|
|000023e0| 65 6e 20 6f 75 74 20 6f | 66 20 74 68 65 20 70 69 |en out o|f the pi|
|000023f0| 63 74 75 72 65 20 61 6e | 64 20 72 65 61 64 79 20 |cture an|d ready |
|00002400| 74 6f 20 64 69 65 0d 09 | 7d 0d 09 65 6c 73 65 0d |to die..|}..else.|
|00002410| 09 09 72 65 74 75 72 6e | 20 46 41 4c 53 45 3b 0d |..return| FALSE;.|
|00002420| 7d 09 0d 0d 0d 42 6f 6f | 6c 65 61 6e 20 44 41 70 |}....Boo|lean DAp|
|00002430| 70 6c 69 63 61 74 69 6f | 6e 3a 3a 49 6e 73 74 61 |plicatio|n::Insta|
|00002440| 6c 48 61 6e 64 6c 65 72 | 28 20 44 45 76 65 6e 74 |lHandler|( DEvent|
|00002450| 48 61 6e 64 6c 65 72 20 | 2a 61 64 64 4d 65 29 0d |Handler |*addMe).|
|00002460| 7b 0d 09 0d 09 69 66 20 | 28 66 45 76 65 6e 74 48 |{....if |(fEventH|
|00002470| 61 6e 64 6c 65 72 73 2d | 3e 49 74 65 6d 49 6e 4c |andlers-|>ItemInL|
|00002480| 69 73 74 28 20 61 64 64 | 4d 65 20 29 20 3d 3d 20 |ist( add|Me ) == |
|00002490| 46 41 4c 53 45 29 0d 09 | 09 66 45 76 65 6e 74 48 |FALSE)..|.fEventH|
|000024a0| 61 6e 64 6c 65 72 73 2d | 3e 41 64 64 49 74 65 6d |andlers-|>AddItem|
|000024b0| 28 20 61 64 64 4d 65 20 | 29 3b 0d 09 72 65 74 75 |( addMe |);..retu|
|000024c0| 72 6e 20 54 52 55 45 3b | 0d 0d 7d 09 0d 0d 0d 2f |rn TRUE;|..}..../|
|000024d0| 2f 0d 2f 2f 20 43 6c 65 | 61 72 4d 65 6e 75 73 20 |/.// Cle|arMenus |
|000024e0| 69 73 20 61 20 75 74 69 | 6c 69 74 79 20 6d 65 74 |is a uti|lity met|
|000024f0| 68 6f 64 20 77 68 69 63 | 68 20 67 65 74 73 20 63 |hod whic|h gets c|
|00002500| 61 6c 6c 65 64 20 62 79 | 20 74 68 65 20 66 69 72 |alled by| the fir|
|00002510| 73 74 0d 2f 2f 20 63 72 | 61 63 6b 20 6d 6f 75 73 |st.// cr|ack mous|
|00002520| 65 20 64 6f 77 6e 20 44 | 41 70 70 6c 69 63 61 74 |e down D|Applicat|
|00002530| 69 6f 6e 20 6d 65 74 68 | 6f 64 20 69 66 20 74 68 |ion meth|od if th|
|00002540| 65 20 6d 6f 75 73 65 20 | 65 76 65 6e 74 20 77 61 |e mouse |event wa|
|00002550| 73 20 69 6e 20 74 68 65 | 20 0d 2f 2f 20 6d 65 6e |s in the| .// men|
|00002560| 75 20 62 61 72 2e 20 20 | 49 20 74 68 69 6e 6b 20 |u bar. |I think |
|00002570| 74 68 69 73 20 63 6c 61 | 73 73 20 6f 66 20 6d 65 |this cla|ss of me|
|00002580| 6d 62 65 72 20 66 75 6e | 63 74 69 6f 6e 20 73 68 |mber fun|ction sh|
|00002590| 6f 75 6c 64 20 62 65 20 | 0d 2f 2f 20 70 61 72 74 |ould be |.// part|
|000025a0| 69 74 69 6f 6e 64 20 61 | 77 61 79 20 66 72 6f 6d |itiond a|way from|
|000025b0| 20 74 68 65 20 72 65 73 | 74 20 6f 66 20 74 68 65 | the res|t of the|
|000025c0| 20 63 6c 61 73 73 20 64 | 65 66 69 6e 69 74 69 6f | class d|efinitio|
|000025d0| 6e 2e 0d 2f 2f 0d 0d 76 | 6f 69 64 20 44 41 70 70 |n..//..v|oid DApp|
|000025e0| 6c 69 63 61 74 69 6f 6e | 3a 3a 43 6c 65 61 72 4d |lication|::ClearM|
|000025f0| 65 6e 75 73 28 29 0d 7b | 0d 09 4d 65 6e 75 48 61 |enus().{|..MenuHa|
|00002600| 6e 64 6c 65 09 6d 65 6e | 75 3b 0d 09 69 6e 74 20 |ndle.men|u;..int |
|00002610| 6d 65 6e 75 49 74 65 6d | 3b 0d 09 0d 09 6d 65 6e |menuItem|;....men|
|00002620| 75 20 3d 20 47 65 74 4d | 48 61 6e 64 6c 65 28 72 |u = GetM|Handle(r|
|00002630| 46 69 6c 65 4d 65 6e 75 | 29 3b 0d 09 66 6f 72 20 |FileMenu|);..for |
|00002640| 28 6d 65 6e 75 49 74 65 | 6d 3d 31 3b 20 6d 65 6e |(menuIte|m=1; men|
|00002650| 75 49 74 65 6d 3c 3d 43 | 6f 75 6e 74 4d 49 74 65 |uItem<=C|ountMIte|
|00002660| 6d 73 28 6d 65 6e 75 29 | 3b 20 6d 65 6e 75 49 74 |ms(menu)|; menuIt|
|00002670| 65 6d 2b 2b 29 0d 09 7b | 0d 09 09 45 6e 61 62 6c |em++)..{|...Enabl|
|00002680| 65 4d 65 6e 75 49 74 65 | 6d 28 20 6d 65 6e 75 2c |eMenuIte|m( menu,|
|00002690| 20 6d 65 6e 75 49 74 65 | 6d 2c 20 46 41 4c 53 45 | menuIte|m, FALSE|
|000026a0| 29 3b 0d 09 7d 0d 0d 09 | 6d 65 6e 75 20 3d 20 47 |);..}...|menu = G|
|000026b0| 65 74 4d 48 61 6e 64 6c | 65 28 72 45 64 69 74 4d |etMHandl|e(rEditM|
|000026c0| 65 6e 75 29 3b 0d 09 66 | 6f 72 20 28 6d 65 6e 75 |enu);..f|or (menu|
|000026d0| 49 74 65 6d 3d 31 3b 20 | 6d 65 6e 75 49 74 65 6d |Item=1; |menuItem|
|000026e0| 3c 3d 43 6f 75 6e 74 4d | 49 74 65 6d 73 28 6d 65 |<=CountM|Items(me|
|000026f0| 6e 75 29 3b 20 6d 65 6e | 75 49 74 65 6d 2b 2b 29 |nu); men|uItem++)|
|00002700| 0d 09 7b 0d 09 09 45 6e | 61 62 6c 65 4d 65 6e 75 |..{...En|ableMenu|
|00002710| 49 74 65 6d 28 20 6d 65 | 6e 75 2c 20 6d 65 6e 75 |Item( me|nu, menu|
|00002720| 49 74 65 6d 2c 20 46 41 | 4c 53 45 29 3b 0d 09 7d |Item, FA|LSE);..}|
|00002730| 0d 7d 0d 0d 00 00 00 00 | 00 00 00 00 00 00 00 00 |.}......|........|
|00002740| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002750| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002760| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002770| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002780| 00 00 01 00 00 00 01 28 | 00 00 00 28 00 00 00 32 |.......(|...(...2|
|00002790| 4d 65 6e 75 48 61 6e 64 | 6c 65 09 6d 65 6e 75 3b |MenuHand|le.menu;|
|000027a0| 0d 09 69 6e 74 20 6d 65 | 6e 75 49 74 65 6d 3b 0d |..int me|nuItem;.|
|000027b0| 12 44 41 70 70 45 76 65 | 6e 74 53 75 70 70 6f 72 |.DAppEve|ntSuppor|
|000027c0| 74 2e 63 45 02 00 00 00 | 50 61 72 74 53 49 54 78 |t.cE....|PartSITx|
|000027d0| 00 00 50 61 72 74 53 49 | 54 78 00 00 00 00 00 00 |..PartSI|Tx......|
|000027e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000027f0| 00 00 a9 80 17 e4 00 00 | 00 00 00 00 01 5a 3b 20 |........|.....Z; |
|00002800| 6d 65 6e 75 49 74 65 6d | 2b 2b 29 0d 09 7b 0d 09 |menuItem|++)..{..|
|00002810| 09 45 6e 61 62 6c 65 4d | 65 6e 75 49 74 65 6d 28 |.EnableM|enuItem(|
|00002820| 20 6d 65 6e 75 2c 20 6d | 65 6e 75 49 74 65 6d 2c | menu, m|enuItem,|
|00002830| 20 46 41 4c 53 45 29 3b | 0d 09 7d 0d 0d 09 6d 65 | FALSE);|..}...me|
|00002840| 6e 75 20 3d 20 47 65 74 | 4d 48 61 6e 64 6c 65 28 |nu = Get|MHandle(|
|00002850| 72 46 69 6c 65 4d 65 6e | 75 29 3b 0d 09 66 6f 72 |rFileMen|u);..for|
|00002860| 20 28 6d 65 6e 75 49 74 | 65 6d 3d 31 3b 20 6d 65 | (menuIt|em=1; me|
|00002870| 6e 75 49 74 65 6d 3c 3d | 43 6f 75 6e 74 4d 49 74 |nuItem<=|CountMIt|
|00002880| 00 00 00 24 00 01 00 22 | 00 00 00 00 00 00 01 21 |...$..."|.......!|
|00002890| 12 2c 10 10 13 74 68 69 | 73 2d 3e 66 44 65 61 64 |.,...thi|s->fDead|
|000028a0| 48 61 6e 64 6c 65 72 73 | 00 00 01 00 00 00 01 28 |Handlers|.......(|
|000028b0| 00 00 00 28 00 00 00 32 | 00 b8 f7 a0 19 58 00 00 |...(...2|.....X..|
|000028c0| 00 1c 00 32 00 00 44 54 | 56 55 00 00 00 0a 11 a5 |...2..DT|VU......|
|000028d0| ff ff 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000028e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000028f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+